Blockchain technology was developed as a way of providing a publicly transparent and decentralized ledger that is configured to track and store digital transactions in a publicly verifiable, secure, and hardened manner to prevent tampering or revision.
Recently, the use of blockchain technology has expanded beyond crypto currency to provide a framework for the execution of smart contracts. Smart contracts are self executing agreements between parties that have all of the relevant covenants spelled out in code, and settle automatically, depending on future signatures or trigger events. By leveraging blockchain technologies, smart contracts, once appended to the blockchain, cannot be revoked, denied, or reversed, since decentralized execution removes them from the control of any one party.
Smart contracts deployed on blockchains often require knowledge of some form of triggering event to achieve fulfillment. For example, a smart contract that specifies payment on delivery of a product may need some indication that the product has been delivered before the contract may be fulfilled. Various smart contract networks (e.g., Ethereum®, OpenLedger™, etc.) have attempted to provide “oracles”, e.g., systems or API's that provide real-world information to the smart contract network, to connect the smart contracts to real world events. However, each smart contract network typically defines a different proprietary way of creating and utilizing oracles which may inhibit the dissemination of events to every blockchain network due to the amount of effort required by a publisher of information to separately comply with each smart contract network's proprietary methods.